package com.chhuang.uresource.po;

import java.util.ArrayList;
import java.util.List;

/**
* UResource ModelExample
* @author ChHuang
* @date Wed May 09 13:52:26 CST 2018
*/
public class UResourceExample {
	protected String orderByClause;
	protected boolean distinct;
	protected List<Criteria> oredCriteria;
	private Integer limit;
	private Integer offset;
	public UResourceExample() {
		oredCriteria = new ArrayList<Criteria>();
	}
	public void setOrderByClause(String orderByClause) {
		this.orderByClause = orderByClause;
	}
	public String getOrderByClause() {
		return orderByClause;
	}
	public void setDistinct(boolean distinct) {
		this.distinct = distinct;
	}
	public boolean isDistinct() {
		return distinct;
	}
	public List<Criteria> getOredCriteria() {
		return oredCriteria;
	}
	public void or(Criteria criteria) {
		oredCriteria.add(criteria);
	}
	public Criteria or() {
		Criteria criteria = createCriteriaInternal();
		oredCriteria.add(criteria);
		return criteria;
	}
	public Criteria createCriteria() {
		Criteria criteria = createCriteriaInternal();
		if (oredCriteria.size() == 0) {
			oredCriteria.add(criteria);
		}
		return criteria;
	}
	protected Criteria createCriteriaInternal() {
		Criteria criteria = new Criteria();
		return criteria;
	}
	public void clear() {
		oredCriteria.clear();
		orderByClause = null;
		distinct = false;
	}
	public void setLimit(Integer limit) {
		this.limit = limit;
	}
	public Integer getLimit() {
		return limit;
	}
	public void setOffset(Integer offset) {
		this.offset = offset;
	}
	public Integer getOffset() {
		return offset;
	}
	protected abstract static class GeneratedCriteria {
		protected List<Criterion> criteria;
		protected GeneratedCriteria() {
			super();
			criteria = new ArrayList<Criterion>();
		}
		public boolean isValid() {
			return criteria.size() > 0;
		}
		public List<Criterion> getAllCriteria() {
			return criteria;
		}
		public List<Criterion> getCriteria() {
			return criteria;
		}
		protected void addCriterion(String condition) {
			if (condition == null) {
				throw new RuntimeException("Value for condition cannot be null");
			}
			criteria.add(new Criterion(condition));
		}
		protected void addCriterion(String condition, Object value, String property) {
			if (value == null) {
				throw new RuntimeException("Value for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value));
		}
		protected void addCriterion(String condition, Object value1, Object value2, String property) {
			if (value1 == null || value2 == null) {
				throw new RuntimeException("Between values for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value1, value2));
		}
		
		public Criteria andResourceIdIsNull() {
            addCriterion("RESOURCE_ID is null");
            return (Criteria) this;
        }
        public Criteria andResourceIdIsNotNull() {
            addCriterion("RESOURCE_ID is not null");
            return (Criteria) this;
        }
        public Criteria andResourceIdEqualTo(String value) {
            addCriterion("RESOURCE_ID =", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdNotEqualTo(String value) {
            addCriterion("RESOURCE_ID <>", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdGreaterThan(String value) {
            addCriterion("RESOURCE_ID >", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_ID >=", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdLessThan(String value) {
            addCriterion("RESOURCE_ID <", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_ID <=", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdLike(String value) {
            addCriterion("RESOURCE_ID like", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdNotLike(String value) {
            addCriterion("RESOURCE_ID not like", value, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdIn(List<String> values) {
            addCriterion("RESOURCE_ID in", values, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdNotIn(List<String> values) {
            addCriterion("RESOURCE_ID not in", values, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdBetween(String value1, String value2) {
            addCriterion("RESOURCE_ID between", value1, value2, "resourceId");
            return (Criteria) this;
        }
        public Criteria andResourceIdNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_ID not between", value1, value2, "resourceId");
            return (Criteria) this;
        }
		public Criteria andResourceNameIsNull() {
            addCriterion("RESOURCE_NAME is null");
            return (Criteria) this;
        }
        public Criteria andResourceNameIsNotNull() {
            addCriterion("RESOURCE_NAME is not null");
            return (Criteria) this;
        }
        public Criteria andResourceNameEqualTo(String value) {
            addCriterion("RESOURCE_NAME =", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameNotEqualTo(String value) {
            addCriterion("RESOURCE_NAME <>", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameGreaterThan(String value) {
            addCriterion("RESOURCE_NAME >", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_NAME >=", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameLessThan(String value) {
            addCriterion("RESOURCE_NAME <", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_NAME <=", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameLike(String value) {
            addCriterion("RESOURCE_NAME like", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameNotLike(String value) {
            addCriterion("RESOURCE_NAME not like", value, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameIn(List<String> values) {
            addCriterion("RESOURCE_NAME in", values, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameNotIn(List<String> values) {
            addCriterion("RESOURCE_NAME not in", values, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameBetween(String value1, String value2) {
            addCriterion("RESOURCE_NAME between", value1, value2, "resourceName");
            return (Criteria) this;
        }
        public Criteria andResourceNameNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_NAME not between", value1, value2, "resourceName");
            return (Criteria) this;
        }
		public Criteria andResourceTypeIsNull() {
            addCriterion("RESOURCE_TYPE is null");
            return (Criteria) this;
        }
        public Criteria andResourceTypeIsNotNull() {
            addCriterion("RESOURCE_TYPE is not null");
            return (Criteria) this;
        }
        public Criteria andResourceTypeEqualTo(String value) {
            addCriterion("RESOURCE_TYPE =", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeNotEqualTo(String value) {
            addCriterion("RESOURCE_TYPE <>", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeGreaterThan(String value) {
            addCriterion("RESOURCE_TYPE >", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_TYPE >=", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeLessThan(String value) {
            addCriterion("RESOURCE_TYPE <", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_TYPE <=", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeLike(String value) {
            addCriterion("RESOURCE_TYPE like", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeNotLike(String value) {
            addCriterion("RESOURCE_TYPE not like", value, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeIn(List<String> values) {
            addCriterion("RESOURCE_TYPE in", values, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeNotIn(List<String> values) {
            addCriterion("RESOURCE_TYPE not in", values, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeBetween(String value1, String value2) {
            addCriterion("RESOURCE_TYPE between", value1, value2, "resourceType");
            return (Criteria) this;
        }
        public Criteria andResourceTypeNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_TYPE not between", value1, value2, "resourceType");
            return (Criteria) this;
        }
		public Criteria andResourceLengthIsNull() {
            addCriterion("RESOURCE_LENGTH is null");
            return (Criteria) this;
        }
        public Criteria andResourceLengthIsNotNull() {
            addCriterion("RESOURCE_LENGTH is not null");
            return (Criteria) this;
        }
        public Criteria andResourceLengthEqualTo(Long value) {
            addCriterion("RESOURCE_LENGTH =", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthNotEqualTo(Long value) {
            addCriterion("RESOURCE_LENGTH <>", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthGreaterThan(Long value) {
            addCriterion("RESOURCE_LENGTH >", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthGreaterThanOrEqualTo(Long value) {
            addCriterion("RESOURCE_LENGTH >=", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthLessThan(Long value) {
            addCriterion("RESOURCE_LENGTH <", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthLessThanOrEqualTo(Long value) {
            addCriterion("RESOURCE_LENGTH <=", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthLike(Long value) {
            addCriterion("RESOURCE_LENGTH like", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthNotLike(Long value) {
            addCriterion("RESOURCE_LENGTH not like", value, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthIn(List<Long> values) {
            addCriterion("RESOURCE_LENGTH in", values, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthNotIn(List<Long> values) {
            addCriterion("RESOURCE_LENGTH not in", values, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthBetween(Long value1, Long value2) {
            addCriterion("RESOURCE_LENGTH between", value1, value2, "resourceLength");
            return (Criteria) this;
        }
        public Criteria andResourceLengthNotBetween(Long value1, Long value2) {
            addCriterion("RESOURCE_LENGTH not between", value1, value2, "resourceLength");
            return (Criteria) this;
        }
		public Criteria andResourceIntroductionIsNull() {
            addCriterion("RESOURCE_INTRODUCTION is null");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionIsNotNull() {
            addCriterion("RESOURCE_INTRODUCTION is not null");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionEqualTo(String value) {
            addCriterion("RESOURCE_INTRODUCTION =", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionNotEqualTo(String value) {
            addCriterion("RESOURCE_INTRODUCTION <>", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionGreaterThan(String value) {
            addCriterion("RESOURCE_INTRODUCTION >", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_INTRODUCTION >=", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionLessThan(String value) {
            addCriterion("RESOURCE_INTRODUCTION <", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_INTRODUCTION <=", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionLike(String value) {
            addCriterion("RESOURCE_INTRODUCTION like", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionNotLike(String value) {
            addCriterion("RESOURCE_INTRODUCTION not like", value, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionIn(List<String> values) {
            addCriterion("RESOURCE_INTRODUCTION in", values, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionNotIn(List<String> values) {
            addCriterion("RESOURCE_INTRODUCTION not in", values, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionBetween(String value1, String value2) {
            addCriterion("RESOURCE_INTRODUCTION between", value1, value2, "resourceIntroduction");
            return (Criteria) this;
        }
        public Criteria andResourceIntroductionNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_INTRODUCTION not between", value1, value2, "resourceIntroduction");
            return (Criteria) this;
        }
		public Criteria andSearchKeyWordsIsNull() {
            addCriterion("SEARCH_KEY_WORDS is null");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsIsNotNull() {
            addCriterion("SEARCH_KEY_WORDS is not null");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsEqualTo(String value) {
            addCriterion("SEARCH_KEY_WORDS =", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsNotEqualTo(String value) {
            addCriterion("SEARCH_KEY_WORDS <>", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsGreaterThan(String value) {
            addCriterion("SEARCH_KEY_WORDS >", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsGreaterThanOrEqualTo(String value) {
            addCriterion("SEARCH_KEY_WORDS >=", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsLessThan(String value) {
            addCriterion("SEARCH_KEY_WORDS <", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsLessThanOrEqualTo(String value) {
            addCriterion("SEARCH_KEY_WORDS <=", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsLike(String value) {
            addCriterion("SEARCH_KEY_WORDS like", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsNotLike(String value) {
            addCriterion("SEARCH_KEY_WORDS not like", value, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsIn(List<String> values) {
            addCriterion("SEARCH_KEY_WORDS in", values, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsNotIn(List<String> values) {
            addCriterion("SEARCH_KEY_WORDS not in", values, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsBetween(String value1, String value2) {
            addCriterion("SEARCH_KEY_WORDS between", value1, value2, "searchKeyWords");
            return (Criteria) this;
        }
        public Criteria andSearchKeyWordsNotBetween(String value1, String value2) {
            addCriterion("SEARCH_KEY_WORDS not between", value1, value2, "searchKeyWords");
            return (Criteria) this;
        }
		public Criteria andResourceAuthorIdIsNull() {
            addCriterion("RESOURCE_AUTHOR_ID is null");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdIsNotNull() {
            addCriterion("RESOURCE_AUTHOR_ID is not null");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdEqualTo(String value) {
            addCriterion("RESOURCE_AUTHOR_ID =", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdNotEqualTo(String value) {
            addCriterion("RESOURCE_AUTHOR_ID <>", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdGreaterThan(String value) {
            addCriterion("RESOURCE_AUTHOR_ID >", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_AUTHOR_ID >=", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdLessThan(String value) {
            addCriterion("RESOURCE_AUTHOR_ID <", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_AUTHOR_ID <=", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdLike(String value) {
            addCriterion("RESOURCE_AUTHOR_ID like", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdNotLike(String value) {
            addCriterion("RESOURCE_AUTHOR_ID not like", value, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdIn(List<String> values) {
            addCriterion("RESOURCE_AUTHOR_ID in", values, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdNotIn(List<String> values) {
            addCriterion("RESOURCE_AUTHOR_ID not in", values, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdBetween(String value1, String value2) {
            addCriterion("RESOURCE_AUTHOR_ID between", value1, value2, "resourceAuthorId");
            return (Criteria) this;
        }
        public Criteria andResourceAuthorIdNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_AUTHOR_ID not between", value1, value2, "resourceAuthorId");
            return (Criteria) this;
        }
		public Criteria andResourcePathIsNull() {
            addCriterion("RESOURCE_PATH is null");
            return (Criteria) this;
        }
        public Criteria andResourcePathIsNotNull() {
            addCriterion("RESOURCE_PATH is not null");
            return (Criteria) this;
        }
        public Criteria andResourcePathEqualTo(String value) {
            addCriterion("RESOURCE_PATH =", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathNotEqualTo(String value) {
            addCriterion("RESOURCE_PATH <>", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathGreaterThan(String value) {
            addCriterion("RESOURCE_PATH >", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_PATH >=", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathLessThan(String value) {
            addCriterion("RESOURCE_PATH <", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_PATH <=", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathLike(String value) {
            addCriterion("RESOURCE_PATH like", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathNotLike(String value) {
            addCriterion("RESOURCE_PATH not like", value, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathIn(List<String> values) {
            addCriterion("RESOURCE_PATH in", values, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathNotIn(List<String> values) {
            addCriterion("RESOURCE_PATH not in", values, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathBetween(String value1, String value2) {
            addCriterion("RESOURCE_PATH between", value1, value2, "resourcePath");
            return (Criteria) this;
        }
        public Criteria andResourcePathNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_PATH not between", value1, value2, "resourcePath");
            return (Criteria) this;
        }
		public Criteria andPathTypeIsNull() {
            addCriterion("PATH_TYPE is null");
            return (Criteria) this;
        }
        public Criteria andPathTypeIsNotNull() {
            addCriterion("PATH_TYPE is not null");
            return (Criteria) this;
        }
        public Criteria andPathTypeEqualTo(Integer value) {
            addCriterion("PATH_TYPE =", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeNotEqualTo(Integer value) {
            addCriterion("PATH_TYPE <>", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeGreaterThan(Integer value) {
            addCriterion("PATH_TYPE >", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("PATH_TYPE >=", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeLessThan(Integer value) {
            addCriterion("PATH_TYPE <", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeLessThanOrEqualTo(Integer value) {
            addCriterion("PATH_TYPE <=", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeLike(Integer value) {
            addCriterion("PATH_TYPE like", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeNotLike(Integer value) {
            addCriterion("PATH_TYPE not like", value, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeIn(List<Integer> values) {
            addCriterion("PATH_TYPE in", values, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeNotIn(List<Integer> values) {
            addCriterion("PATH_TYPE not in", values, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeBetween(Integer value1, Integer value2) {
            addCriterion("PATH_TYPE between", value1, value2, "pathType");
            return (Criteria) this;
        }
        public Criteria andPathTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("PATH_TYPE not between", value1, value2, "pathType");
            return (Criteria) this;
        }
		public Criteria andDownloadAmountIsNull() {
            addCriterion("DOWNLOAD_AMOUNT is null");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountIsNotNull() {
            addCriterion("DOWNLOAD_AMOUNT is not null");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountEqualTo(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT =", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountNotEqualTo(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT <>", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountGreaterThan(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT >", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountGreaterThanOrEqualTo(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT >=", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountLessThan(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT <", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountLessThanOrEqualTo(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT <=", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountLike(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT like", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountNotLike(Integer value) {
            addCriterion("DOWNLOAD_AMOUNT not like", value, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountIn(List<Integer> values) {
            addCriterion("DOWNLOAD_AMOUNT in", values, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountNotIn(List<Integer> values) {
            addCriterion("DOWNLOAD_AMOUNT not in", values, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountBetween(Integer value1, Integer value2) {
            addCriterion("DOWNLOAD_AMOUNT between", value1, value2, "downloadAmount");
            return (Criteria) this;
        }
        public Criteria andDownloadAmountNotBetween(Integer value1, Integer value2) {
            addCriterion("DOWNLOAD_AMOUNT not between", value1, value2, "downloadAmount");
            return (Criteria) this;
        }
		public Criteria andMaxReadNumIsNull() {
            addCriterion("MAX_READ_NUM is null");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumIsNotNull() {
            addCriterion("MAX_READ_NUM is not null");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumEqualTo(Integer value) {
            addCriterion("MAX_READ_NUM =", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumNotEqualTo(Integer value) {
            addCriterion("MAX_READ_NUM <>", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumGreaterThan(Integer value) {
            addCriterion("MAX_READ_NUM >", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("MAX_READ_NUM >=", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumLessThan(Integer value) {
            addCriterion("MAX_READ_NUM <", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumLessThanOrEqualTo(Integer value) {
            addCriterion("MAX_READ_NUM <=", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumLike(Integer value) {
            addCriterion("MAX_READ_NUM like", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumNotLike(Integer value) {
            addCriterion("MAX_READ_NUM not like", value, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumIn(List<Integer> values) {
            addCriterion("MAX_READ_NUM in", values, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumNotIn(List<Integer> values) {
            addCriterion("MAX_READ_NUM not in", values, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumBetween(Integer value1, Integer value2) {
            addCriterion("MAX_READ_NUM between", value1, value2, "maxReadNum");
            return (Criteria) this;
        }
        public Criteria andMaxReadNumNotBetween(Integer value1, Integer value2) {
            addCriterion("MAX_READ_NUM not between", value1, value2, "maxReadNum");
            return (Criteria) this;
        }
		public Criteria andCreateTimeIsNull() {
            addCriterion("CREATE_TIME is null");
            return (Criteria) this;
        }
        public Criteria andCreateTimeIsNotNull() {
            addCriterion("CREATE_TIME is not null");
            return (Criteria) this;
        }
        public Criteria andCreateTimeEqualTo(String value) {
            addCriterion("CREATE_TIME =", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeNotEqualTo(String value) {
            addCriterion("CREATE_TIME <>", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeGreaterThan(String value) {
            addCriterion("CREATE_TIME >", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeGreaterThanOrEqualTo(String value) {
            addCriterion("CREATE_TIME >=", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeLessThan(String value) {
            addCriterion("CREATE_TIME <", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeLessThanOrEqualTo(String value) {
            addCriterion("CREATE_TIME <=", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeLike(String value) {
            addCriterion("CREATE_TIME like", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeNotLike(String value) {
            addCriterion("CREATE_TIME not like", value, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeIn(List<String> values) {
            addCriterion("CREATE_TIME in", values, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeNotIn(List<String> values) {
            addCriterion("CREATE_TIME not in", values, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeBetween(String value1, String value2) {
            addCriterion("CREATE_TIME between", value1, value2, "createTime");
            return (Criteria) this;
        }
        public Criteria andCreateTimeNotBetween(String value1, String value2) {
            addCriterion("CREATE_TIME not between", value1, value2, "createTime");
            return (Criteria) this;
        }
		public Criteria andModifyTimeIsNull() {
            addCriterion("MODIFY_TIME is null");
            return (Criteria) this;
        }
        public Criteria andModifyTimeIsNotNull() {
            addCriterion("MODIFY_TIME is not null");
            return (Criteria) this;
        }
        public Criteria andModifyTimeEqualTo(String value) {
            addCriterion("MODIFY_TIME =", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeNotEqualTo(String value) {
            addCriterion("MODIFY_TIME <>", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeGreaterThan(String value) {
            addCriterion("MODIFY_TIME >", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeGreaterThanOrEqualTo(String value) {
            addCriterion("MODIFY_TIME >=", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeLessThan(String value) {
            addCriterion("MODIFY_TIME <", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeLessThanOrEqualTo(String value) {
            addCriterion("MODIFY_TIME <=", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeLike(String value) {
            addCriterion("MODIFY_TIME like", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeNotLike(String value) {
            addCriterion("MODIFY_TIME not like", value, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeIn(List<String> values) {
            addCriterion("MODIFY_TIME in", values, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeNotIn(List<String> values) {
            addCriterion("MODIFY_TIME not in", values, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeBetween(String value1, String value2) {
            addCriterion("MODIFY_TIME between", value1, value2, "modifyTime");
            return (Criteria) this;
        }
        public Criteria andModifyTimeNotBetween(String value1, String value2) {
            addCriterion("MODIFY_TIME not between", value1, value2, "modifyTime");
            return (Criteria) this;
        }
	}
	/**
	 */
	public static class Criteria extends GeneratedCriteria {
	protected Criteria() {
			super();
		}
	}
	public static class Criterion {
		private String condition;
		private Object value;
		private Object secondValue;
		private boolean noValue;
		private boolean singleValue;
		private boolean betweenValue;
		private boolean listValue;
		private String typeHandler;
		public String getCondition() {
			return condition;
		}
		public Object getValue() {
			return value;
		}
		public Object getSecondValue() {
			return secondValue;
		}
		public boolean isNoValue() {
			return noValue;
		}
		public boolean isSingleValue() {
			return singleValue;
		}
		public boolean isBetweenValue() {
			return betweenValue;
		}
		public boolean isListValue() {
			return listValue;
		}
		public String getTypeHandler() {
			return typeHandler;
		}
		protected Criterion(String condition) {
			super();
			this.condition = condition;
			this.typeHandler = null;
			this.noValue = true;
		}
		protected Criterion(String condition, Object value, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.typeHandler = typeHandler;
			if (value instanceof List<?>) {
				this.listValue = true;
			} else {
				this.singleValue = true;
			}
		}
		protected Criterion(String condition, Object value) {
			this(condition, value, null);
		}
		protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.secondValue = secondValue;
			this.typeHandler = typeHandler;
			this.betweenValue = true;
		}
		protected Criterion(String condition, Object value, Object secondValue) {
			this(condition, value, secondValue, null);
		}
	}
}